﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace TextToSpeechEngine
{

    public enum PhonemeID {a,e,i,o,u,ae,ee,ie,ou,ue,oo,ar,ur,or,au,er,ow,oi,air,ear,
                            b,d,f,g,h,j,k,l,m,n,p,r,s,t,v,w,wh,y,z,th1,th2,ch,sh,zh,ng};

    public class Phoneme
    {
        #region Fields
        private int iD;
        private List<string> soundDescriptionList;
        private List<WAVSound> soundList;
        #endregion

        #region Constructors
        public Phoneme()
        {
            soundDescriptionList = new List<string>();
            soundList = new List<WAVSound>();
        }
        #endregion

        #region Properties
        public override string ToString()
        {
            string s = "";
            s += "ID: " + iD + "\r\n";
            int counter = 0;
            foreach (string str in SoundDescriptionList)
            {
                counter++;
                s += "Version " + counter.ToString() + ": " + str + "\r\n";
            }
            return s;
        }

        public int GetNumberOfVersions()
        {
            return soundList.Count; // Should be equal to soundDescriptionList.Count
        }

        public int ID
        {
            get { return iD; }
            set { iD = value; }
        }

        public List<string> SoundDescriptionList
        {
            get { return soundDescriptionList; }
            set { soundDescriptionList = value; }
        }

        public List<WAVSound> SoundList
        {
            get { return soundList; }
            set { soundList = value; }
        }
        #endregion
    }
}
